"""
@-*- coding: utf-8 -*-
@ python：python 3.8
@ 创建人员:ylx-lingxiao
@ 创建时间:2025/2/26  22:36
@ File:conftest.py
@ Explanation:
"""
import pytest
from common.yaml_util import clean_yaml


@pytest.fixture(params=[1, 2, 3], autouse=True)  # 参数化
def my_fixture_user(request):
    print("\n这是用户管理前置方法")
    yield request.param  # 返回参数化值，并保留后置操作的能力，return和yield都表示返回，return的后面不能有代码，yield返回后，后面还可以接代码，还可以继续执行
    print("\n这是用户管理后置方法")


@pytest.fixture(scope="function")  #用于在部分用例之前和之后执行相关操作,你希望哪个用例执行，那你这个用例就去调这个函数就行,之前是写到test_qpi的
#现在改写到统一的配置文件中
def exe_sql():
    print("执行连接数据库")
    yield
    print("执行断开数据库")


#这个清空token的操作应该在什么时候执行，应该在所有的接口请求之前执行
#由于我们设置了autouse所以不需要显示调用，会在本次测试执行时自动调用，
#由于级别是session，所以仅仅会在执行，比如说本次10条case之前调用一次

@pytest.fixture(scope="session", autouse=True)
def clear_extract():
    clean_yaml()
